package com.hqyj.javaSpringBoot.modules.common.dao;

import com.hqyj.javaSpringBoot.modules.common.entity.ExceptionLog;
import org.apache.ibatis.annotations.*;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * @author ：Cwd
 * @Description：ExceptionLogDao
 * @date ：2021/8/25 9:04
 */
@Mapper
@Repository
public interface ExceptionLogDao {

    @Select("select * from common_exception_log where path = #{path} " +
            "and method_name = #{methodName} and exception_type = #{exceptionType}")
    List<ExceptionLog> getExceptionLogByParam(@Param("path") String path,
                                              @Param("methodName") String methodName,
                                              @Param("exceptionType") String exceptionType);
    @Insert("insert into common_exception_log " +
            "(ip,path,class_name,method_name,exception_type,exception_message,create_date)" +
            "values (#{ip},#{path},#{className},#{methodName}," +
            "#{exceptionType},#{exceptionMessage},#{createDate})")
    @Options(useGeneratedKeys = true,keyProperty = "id",keyColumn = "id")
    void insertExceptionLog(ExceptionLog exceptionLog);
}
